﻿/*
  ColorUi for MP-weixin  v2.1.4 | by 文晓港 2019年4月25日19:15:42
  仅供学习交流，如作它用所承受的法律责任一概与作者无关
  使用ColorUi开发扩展与插件时，请注明基于ColorUi开发
  
  （QQ交流群：240787041）
*/

/* ==================
        初始化
 ==================== */
body {
    margin:0;
    padding:0;
    /* Color 可以自定义相关配色 */
    /* var属性兼容性 --> https://www.caniuse.com/#feat=css-variables */
    /* 标准色 */
    --red: #e54d42;
    --orange: #f37b1d;
    --yellow: #fbbd08;
    --olive: #8dc63f;
    --green: #39b54a;
    --cyan: #1cbbb4;
    --blue: #0081ff;
    --purple: #6739b6;
    --mauve: #9c26b0;
    --pink: #e03997;
    --brown: #a5673f;
    --grey: #8799a3;
    --black: #333333;
    --darkGray: #666666;
    --gray: #aaaaaa;
    --ghostWhite: #f1f1f1;
    --white: #ffffff;
    /* 浅色 */
    --redLight: #fadbd9;
    --orangeLight: #fde6d2;
    --yellowLight: #fef2ce;
    --oliveLight: #e8f4d9;
    --greenLight: #d7f0db;
    --cyanLight: #d2f1f0;
    --blueLight: #cce6ff;
    --purpleLight: #e1d7f0;
    --mauveLight: #ebd4ef;
    --pinkLight: #f9d7ea;
    --brownLight: #ede1d9;
    --greyLight: #e7ebed;
    /* 渐变色 */
    --gradualRed: linear-gradient(45deg, #f43f3b, #ec008c);
    --gradualOrange: linear-gradient(45deg, #ff9700, #ed1c24);
    --gradualGreen: linear-gradient(45deg, #39b54a, #8dc63f);
    --gradualPurple: linear-gradient(45deg, #9000ff, #5e00ff);
    --gradualPink: linear-gradient(45deg, #ec008c, #6739b6);
    --gradualBlue: linear-gradient(45deg, #0081ff, #1cbbb4);
    /* 阴影透明色 */
    --ShadowSize: 0.1rem 0.1rem 0.1rem;
    --redShadow: rgba(204, 69, 59, 0.2);
    --orangeShadow: rgba(217, 109, 26, 0.2);
    --yellowShadow: rgba(224, 170, 7, 0.2);
    --oliveShadow: rgba(124, 173, 55, 0.2);
    --greenShadow: rgba(48, 156, 63, 0.2);
    --cyanShadow: rgba(28, 187, 180, 0.2);
    --blueShadow: rgba(0, 102, 204, 0.2);
    --purpleShadow: rgba(88, 48, 156, 0.2);
    --mauveShadow: rgba(133, 33, 150, 0.2);
    --pinkShadow: rgba(199, 50, 134, 0.2);
    --brownShadow: rgba(140, 88, 53, 0.2);
    --greyShadow: rgba(114, 130, 138, 0.2);
    --grayShadow: rgba(114, 130, 138, 0.2);
    --blackShadow: rgba(26, 26, 26, 0.2);
    background-color: var(--ghostWhite);
    font-size: 0.26rem;
    color: var(--black);
    font-family: Helvetica Neue, Helvetica, sans-serif;
}

div,
swiper,
button,
input,
textarea,
label,
image {
    box-sizing: border-box;
}

.round {
    border-radius: 5000rem;
}

.radius {
    border-radius: 0.2rem;
}

/* ==================
          图片
 ==================== */

image {
    max-width: 100%;
    display: inline-block;
    position: relative;
    z-index: 0;
}
.response {
    width: 100%;
}

/* ==================
          边框
 ==================== */

/* -- 实线 -- */

.solid,
.solid-top,
.solid-right,
.solid-bottom,
.solid-left,
.solids,
.solids-top,
.solids-right,
.solids-bottom,
.solids-left,
.dashed,
.dashed-top,
.dashed-right,
.dashed-bottom,
.dashed-left {
    position: relative;
}

    .solid::after,
    .solid-top::after,
    .solid-right::after,
    .solid-bottom::after,
    .solid-left::after,
    .solids::after,
    .solids-top::after,
    .solids-right::after,
    .solids-bottom::after,
    .solids-left::after,
    .dashed::after,
    .dashed-top::after,
    .dashed-right::after,
    .dashed-bottom::after,
    .dashed-left::after {
        content: " ";
        width: 200%;
        height: 200%;
        position: absolute;
        top: 0;
        left: 0;
        border-radius: inherit;
        transform: scale(0.5);
        transform-origin: 0 0;
        pointer-events: none;
        box-sizing: border-box;
    }

    .solid::after {
        border: 1px solid rgba(0, 0, 0, 0.1);
    }

    .solid-top::after {
        border-top: 1px solid rgba(0, 0, 0, 0.1);
    }

    .solid-right::after {
        border-right: 1px solid rgba(0, 0, 0, 0.1);
    }

    .solid-bottom::after {
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }

    .solid-left::after {
        border-left: 1px solid rgba(0, 0, 0, 0.1);
    }

    .solids::after {
        border: 0.1rem solid #eee;
    }

    .solids-top::after {
        border-top: 0.1rem solid #eee;
    }

    .solids-right::after {
        border-right: 0.1rem solid #eee;
    }

    .solids-bottom::after {
        border-bottom: 0.1rem solid #eee;
    }

    .solids-left::after {
        border-left: 0.1rem solid #eee;
    }

    /* -- 虚线 -- */

    .dashed::after {
        border: 1px dashed #ddd;
    }

    .dashed-top::after {
        border-top: 1px dashed #ddd;
    }

    .dashed-right::after {
        border-right: 1px dashed #ddd;
    }

    .dashed-bottom::after {
        border-bottom: 1px dashed #ddd;
    }

    .dashed-left::after {
        border-left: 1px dashed #ddd;
    }

/* -- 阴影 -- */

.shadow[class*='white'] {
    --ShadowSize: 0 0.5rem 0.5rem;
}

.shadow-lg {
    --ShadowSize: 0 0.3rem 0.3rem 0;
}

.shadow-warp {
    position: relative;
    box-shadow: 0 0 0.1rem rgba(0, 0, 0, 0.1);
}

    .shadow-warp:before,
    .shadow-warp:after {
        position: absolute;
        content: "";
        top: 0.15rem;
        bottom: 0.2rem;
        left: 0.15rem;
        width: 50%;
        box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
        transform: rotate(-3deg);
        z-index: -1;
    }

    .shadow-warp:after {
        right: 0.15rem;
        left: auto;
        transform: rotate(3deg);
    }

.shadow-blur {
    position: relative;
}

    .shadow-blur::before {
        content: "";
        display: block;
        background: inherit;
        filter: blur(0.1rem);
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0.1rem;
        left: 0.1rem;
        z-index: -1;
        opacity: 0.4;
        transform-origin: 0 0;
        border-radius: inherit;
        transform: scale(1, 1);
    }

/* ==================
          按钮
 ==================== */

.btn {
    position: relative;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 0 0.1rem;
    font-size: 0.3rem;
    height: 1rem;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    overflow: visible;
    margin-left: initial;
    transform: translate(0rpx, 0rpx);
    margin-right: initial;
}

    .btn::after {
        display: none;
    }

    .btn:not([class*="bg-"]) {
        background-color: #f0f0f0;
    }

    .btn[class*="line"] {
        background-color: transparent;
    }

        .btn[class*="line"]::after {
            content: " ";
            display: block;
            width: 200%;
            height: 200%;
            position: absolute;
            top: 0;
            left: 0;
            border: 1px solid currentColor;
            transform: scale(0.5);
            transform-origin: 0 0;
            box-sizing: border-box;
            border-radius: 0.15rem;
            z-index: 1;
            pointer-events: none;
        }

    .btn.round[class*="line"]::after {
        border-radius: 1000rem;
    }

    .btn[class*="lines"]::after {
        border: 0.1rem solid currentColor;
    }

    .btn[class*="bg-"]::after {
        display: none;
    }

    .btn.sm {
        padding: 0 0.15rem;
        font-size: 0.15rem;
        height: 0.2rem;
    }

    .btn.lg {
        padding: 0 0.3rem;
        font-size: 0.2rem;
        height: 0.5rem;
    }

    .btn.icon.sm {
        width: 0.3rem;
        height: 0.3rem;
    }

    .btn.icon {
        width: 0.5rem;
        height: 0.5rem;
        border-radius: 5rem;
        padding: 0;
    }

button.icon.lg {
    width: 0.5rem;
    height: 0.5rem;
}

.btn.shadow-blur::before {
    top: 0.1rem;
    left: 0.1rem;
    filter: blur(0.1rem);
    opacity: 0.6;
}

.btn.button-hover {
    transform: translate(1rpx, 1rpx);
}

.block {
    display: block;
}

.btn.block {
    display: flex;
}

.btn[disabled] {
    opacity: 0.6;
    color: var(--white);
}


/* ==================
          头像
 ==================== */

.avatar {
    font-variant: small-caps;
    margin: 0;
    padding: 0;
    display: inline-flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    background-color: #ccc;
    color: var(--white);
    white-space: nowrap;
    position: relative;
    width: 1.3rem;
    height: 1.3rem;
    background-size: cover;
    background-position: center;
    vertical-align: middle;
    font-size: 1.5em;
}

    .avatar.sm {
        width: 0.6rem;
        height: 0.6rem;
        font-size: 1em;
    }

    .avatar.lg {
        width: 96rpx;
        height: 96rpx;
        font-size: 2em;
    }

    .avatar.xl {
        width: 128rpx;
        height: 128rpx;
        font-size: 2.5em;
    }

    .avatar .avatar-text {
        font-size: 0.4em;
    }

.avatar-group {
    direction: rtl;
    unicode-bidi: bidi-override;
    padding: 0 0.1rem 0 0.3rem;
    display: inline-block;
}

    .avatar-group .avatar {
        margin-left: -0.2rem;
        border: 4rpx solid var(--ghostWhite);
        vertical-align: middle;
    }

        .avatar-group .avatar.sm {
            margin-left: -0.15rem;
            border: 1rpx solid var(--ghostWhite);
        }


/* ==================
         表单
 ==================== */

.form-group {
    background-color: var(--white);
    padding: 1rpx 0.2rem;
    display: flex;
    align-items: center;
    min-height: 100rpx;
    justify-content: space-between;
}

    .form-group + .form-group {
        border-top: 1rpx solid #eee;
    }

    .form-group .title {
        text-align: justify;
        padding-right: 0.2rem;
        font-size: 0.2rem;
        position: relative;
        height: 60rpx;
        line-height: 60rpx;
    }

    .form-group input {
        flex: 1;
        font-size: 0.2rem;
        color: #555;
        padding-right: 0.15rem;
    }

    .form-group > text[class*="cuIcon-"] {
        font-size: 36rpx;
        padding: 0;
        box-sizing: border-box;
    }

    .form-group textarea {
        margin: 32rpx 0 0.2rem;
        height: 4.6em;
        width: 100%;
        line-height: 1.2em;
        flex: 1;
        font-size: 28rpx;
        padding: 0;
    }

    .form-group.align-start .title {
        height: 1em;
        margin-top: 32rpx;
        line-height: 1em;
    }

    .form-group picker {
        flex: 1;
        padding-right: 0.3rem;
        overflow: hidden;
        position: relative;
    }

        .form-group picker .texticker {
            line-height: 100rpx;
            font-size: 28rpx;
            text-overflow: ellipsis;
            white-space: nowrap;
            overflow: hidden;
            width: 100%;
            text-align: right;
        }

        .form-group picker::after {
            font-family: "cuIcon";
            display: block;
            content: "\e6a3";
            position: absolute;
            font-size: 34rpx;
            color: var(--grey);
            line-height: 100rpx;
            width: 60rpx;
            text-align: center;
            top: 0;
            bottom: 0;
            right: -0.15rem;
            margin: auto;
        }

    .form-group textarea[disabled],
    .form-group textarea[disabled] .textlaceholder {
        color: transparent;
    }


/* ==================
          布局
 ==================== */

/*  -- flex弹性布局 -- */

.flex {
    display: flex;
}

.basis-xs {
    flex-basis: 20%;
}

.basis-sm {
    flex-basis: 40%;
}

.basis-df {
    flex-basis: 50%;
}

.basis-lg {
    flex-basis: 60%;
}

.basis-xl {
    flex-basis: 80%;
}

.flex-sub {
    flex: 1;
}

.flex-twice {
    flex: 2;
}

.flex-treble {
    flex: 3;
}

.flex-direction {
    flex-direction: column;
}

.flex-wrap {
    flex-wrap: wrap;
}

.align-start {
    align-items: flex-start;
}

.align-end {
    align-items: flex-end;
}

.align-center {
    align-items: center;
}

.align-stretch {
    align-items: stretch;
}

.self-start {
    align-self: flex-start;
}

.self-center {
    align-self:center;
}

.self-end {
    align-self: flex-end;
}

.self-stretch {
    align-self: stretch;
}

.align-stretch {
    align-items: stretch;
}

.justify-start {
    justify-content: flex-start;
}

.justify-end {
    justify-content: flex-end;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.justify-around {
    justify-content: space-around;
}

/* grid布局 */

.grid {
    display: flex;
    flex-wrap: wrap;
}

    .grid.grid-square {
        overflow: hidden;
    }

        .grid.grid-square .tag {
            position: absolute;
            right: 0;
            top: 0;
            border-bottom-left-radius: 0.1rem;
            padding: 0.1rem 0.15rem;
            height: auto;
            background-color: rgba(0, 0, 0, 0.5);
        }

        .grid.grid-square > view > text[class*="cuIcon-"] {
            font-size: 0.26rem;
            position: absolute;
            color: var(--grey);
            margin: auto;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
        }

        .grid.grid-square > view {
            margin-right: 0.15rem;
            margin-bottom: 0.15rem;
            border-radius: 0.1rem;
            position: relative;
            overflow: hidden;
        }

            .grid.grid-square > view.bg-img image {
                width: 100%;
                height: 100%;
                position: absolute;
            }

    .grid.col-1.grid-square > view {
        padding-bottom: 100%;
        height: 0;
        margin-right: 0;
    }

    .grid.col-2.grid-square > view {
        padding-bottom: calc((100% - 0.15rem)/2);
        height: 0;
        width: calc((100% - 0.15rem)/2);
    }

    .grid.col-3.grid-square > view {
        padding-bottom: calc((100% - 0.3rem)/3);
        height: 0;
        width: calc((100% - 0.3rem)/3);
    }

    .grid.col-4.grid-square > view {
        padding-bottom: calc((100% - 60rpx)/4);
        height: 0;
        width: calc((100% - 60rpx)/4);
    }

    .grid.col-5.grid-square > view {
        padding-bottom: calc((100% - 80rpx)/5);
        height: 0;
        width: calc((100% - 80rpx)/5);
    }

        .grid.col-2.grid-square > view:nth-child(2n),
        .grid.col-3.grid-square > view:nth-child(3n),
        .grid.col-4.grid-square > view:nth-child(4n),
        .grid.col-5.grid-square > view:nth-child(5n) {
            margin-right: 0;
        }

    .grid.col-1 > view {
        width: 100%;
    }

    .grid.col-2 > view {
        width: 50%;
    }

    .grid.col-3 > view {
        width: 33.33%;
    }

    .grid.col-4 > view {
        width: 25%;
    }

    .grid.col-5 > view {
        width: 20%;
    }

/*  -- 内外边距 -- */

.margin-0 {
    margin: 0;
}

.margin-xs {
    margin: 0.1rem;
}

.margin-sm {
    margin: 0.15rem;
}

.margin {
    margin: 0.2rem;
}

.margin-lg {
    margin: 0.3rem;
}

.margin-xl {
    margin: 0.5rem;
}

.margin-top-xs {
    margin-top: 0.1rem;
}

.margin-top-sm {
    margin-top: 0.15rem;
}

.margin-top {
    margin-top: 0.2rem;
}

.margin-top-lg {
    margin-top: 0.3rem;
}

.margin-top-xl {
    margin-top: 0.5rem;
}

.margin-right-xs {
    margin-right: 0.1rem;
}

.margin-right-sm {
    margin-right: 0.15rem;
}

.margin-right {
    margin-right: 0.2rem;
}

.margin-right-lg {
    margin-right: 0.3rem;
}

.margin-right-xl {
    margin-right: 0.5rem;
}

.margin-bottom-xs {
    margin-bottom: 0.1rem;
}

.margin-bottom-sm {
    margin-bottom: 0.15rem;
}

.margin-bottom {
    margin-bottom: 0.2rem;
}

.margin-bottom-lg {
    margin-bottom: 0.3rem;
}

.margin-bottom-xl {
    margin-bottom: 0.5rem;
}

.margin-left-xs {
    margin-left: 0.1rem;
}

.margin-left-sm {
    margin-left: 0.15rem;
}

.margin-left {
    margin-left: 0.2rem;
}

.margin-left-lg {
    margin-left: 0.3rem;
}

.margin-left-xl {
    margin-left: 0.5rem;
}

.margin-lr-xs {
    margin-left: 0.1rem;
    margin-right: 0.1rem;
}

.margin-lr-sm {
    margin-left: 0.15rem;
    margin-right: 0.15rem;
}

.margin-lr {
    margin-left: 0.2rem;
    margin-right: 0.2rem;
}

.margin-lr-lg {
    margin-left: 0.3rem;
    margin-right: 0.3rem;
}

.margin-lr-xl {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}

.margin-tb-xs {
    margin-top: 0.1rem;
    margin-bottom: 0.1rem;
}

.margin-tb-sm {
    margin-top: 0.15rem;
    margin-bottom: 0.15rem;
}

.margin-tb {
    margin-top: 0.2rem;
    margin-bottom: 0.2rem;
}

.margin-tb-lg {
    margin-top: 0.3rem;
    margin-bottom: 0.3rem;
}

.margin-tb-xl {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.textadding-0 {
    padding: 0;
}

.textadding-xs {
    padding: 0.1rem;
}

.textadding-sm {
    padding: 0.15rem;
}

.textadding {
    padding: 0.2rem;
}

.textadding-lg {
    padding: 0.3rem;
}

.textadding-xl {
    padding: 0.5rem;
}

.textadding-top-xs {
    padding-top: 0.1rem;
}

.textadding-top-sm {
    padding-top: 0.15rem;
}

.textadding-top {
    padding-top: 0.2rem;
}

.textadding-top-lg {
    padding-top: 0.3rem;
}

.textadding-top-xl {
    padding-top: 0.5rem;
}

.textadding-right-xs {
    padding-right: 0.1rem;
}

.textadding-right-sm {
    padding-right: 0.15rem;
}

.textadding-right {
    padding-right: 0.2rem;
}

.textadding-right-lg {
    padding-right: 0.3rem;
}

.textadding-right-xl {
    padding-right: 0.5rem;
}

.textadding-bottom-xs {
    padding-bottom: 0.1rem;
}

.textadding-bottom-sm {
    padding-bottom: 0.15rem;
}

.textadding-bottom {
    padding-bottom: 0.2rem;
}

.textadding-bottom-lg {
    padding-bottom: 0.3rem;
}

.textadding-bottom-xl {
    padding-bottom: 0.5rem;
}

.textadding-left-xs {
    padding-left: 0.1rem;
}

.textadding-left-sm {
    padding-left: 0.15rem;
}

.textadding-left {
    padding-left: 0.2rem;
}

.textadding-left-lg {
    padding-left: 0.3rem;
}

.textadding-left-xl {
    padding-left: 0.5rem;
}

.textadding-lr-xs {
    padding-left: 0.1rem;
    padding-right: 0.1rem;
}

.textadding-lr-sm {
    padding-left: 0.15rem;
    padding-right: 0.15rem;
}

.textadding-lr {
    padding-left: 0.2rem;
    padding-right: 0.2rem;
}

.textadding-lr-lg {
    padding-left: 0.3rem;
    padding-right: 0.3rem;
}

.textadding-lr-xl {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.textadding-tb-xs {
    padding-top: 0.1rem;
    padding-bottom: 0.1rem;
}

.textadding-tb-sm {
    padding-top: 0.15rem;
    padding-bottom: 0.15rem;
}

.textadding-tb {
    padding-top: 0.2rem;
    padding-bottom: 0.2rem;
}

.textadding-tb-lg {
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
}

.textadding-tb-xl {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

/* -- 浮动 --  */

.cf::after,
.cf::before {
    content: " ";
    display: table;
}

.cf::after {
    clear: both;
}

.fl {
    float: left;
}

.fr {
    float: right;
}

/* ==================
          背景
 ==================== */

.line-red::after,
.lines-red::after {
    border-color: var(--red);
}

.line-orange::after,
.lines-orange::after {
    border-color: var(--orange);
}

.line-yellow::after,
.lines-yellow::after {
    border-color: var(--yellow);
}

.line-olive::after,
.lines-olive::after {
    border-color: var(--olive);
}

.line-green::after,
.lines-green::after {
    border-color: var(--green);
}

.line-cyan::after,
.lines-cyan::after {
    border-color: var(--cyan);
}

.line-blue::after,
.lines-blue::after {
    border-color: var(--blue);
}

.line-purple::after,
.lines-purple::after {
    border-color: var(--purple);
}

.line-mauve::after,
.lines-mauve::after {
    border-color: var(--mauve);
}

.line-pink::after,
.lines-pink::after {
    border-color: var(--pink);
}

.line-brown::after,
.lines-brown::after {
    border-color: var(--brown);
}

.line-grey::after,
.lines-grey::after {
    border-color: var(--grey);
}

.line-gray::after,
.lines-gray::after {
    border-color: var(--gray);
}

.line-black::after,
.lines-black::after {
    border-color: var(--black);
}

.line-white::after,
.lines-white::after {
    border-color: var(--white);
}

.bg-red {
    background-color: var(--red);
    color: var(--white);
}

.bg-orange {
    background-color: var(--orange);
    color: var(--white);
}

.bg-yellow {
    background-color: var(--yellow);
    color: var(--black);
}

.bg-olive {
    background-color: var(--olive);
    color: var(--white);
}

.bg-green {
    background-color: var(--green);
    color: var(--white);
}

.bg-cyan {
    background-color: var(--cyan);
    color: var(--white);
}

.bg-blue {
    background-color: var(--blue);
    color: var(--white);
}

.bg-purple {
    background-color: var(--purple);
    color: var(--white);
}

.bg-mauve {
    background-color: var(--mauve);
    color: var(--white);
}

.bg-pink {
    background-color: var(--pink);
    color: var(--white);
}

.bg-brown {
    background-color: var(--brown);
    color: var(--white);
}

.bg-grey {
    background-color: var(--grey);
    color: var(--white);
}

.bg-gray {
    background-color: #f0f0f0;
    color: var(--black);
}

.bg-black {
    background-color: var(--black);
    color: var(--white);
}

.bg-white {
    background-color: var(--white);
    color: var(--darkGray);
}

.bg-shadeTop {
    background-image: linear-gradient(rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.01));
    color: var(--white);
}

.bg-shadeBottom {
    background-image: linear-gradient(rgba(0, 0, 0, 0.01), rgba(0, 0, 0, 1));
    color: var(--white);
}

.bg-red.light {
    color: var(--red);
    background-color: var(--redLight);
}

.bg-orange.light {
    color: var(--orange);
    background-color: var(--orangeLight);
}

.bg-yellow.light {
    color: var(--yellow);
    background-color: var(--yellowLight);
}

.bg-olive.light {
    color: var(--olive);
    background-color: var(--oliveLight);
}

.bg-green.light {
    color: var(--green);
    background-color: var(--greenLight);
}

.bg-cyan.light {
    color: var(--cyan);
    background-color: var(--cyanLight);
}

.bg-blue.light {
    color: var(--blue);
    background-color: var(--blueLight);
}

.bg-purple.light {
    color: var(--purple);
    background-color: var(--purpleLight);
}

.bg-mauve.light {
    color: var(--mauve);
    background-color: var(--mauveLight);
}

.bg-pink.light {
    color: var(--pink);
    background-color: var(--pinkLight);
}

.bg-brown.light {
    color: var(--brown);
    background-color: var(--brownLight);
}

.bg-grey.light {
    color: var(--grey);
    background-color: var(--greyLight);
}

.bg-gradual-red {
    background-image: var(--gradualRed);
    color: var(--white);
}

.bg-gradual-orange {
    background-image: var(--gradualOrange);
    color: var(--white);
}

.bg-gradual-green {
    background-image: var(--gradualGreen);
    color: var(--white);
}

.bg-gradual-purple {
    background-image: var(--gradualPurple);
    color: var(--white);
}

.bg-gradual-pink {
    background-image: var(--gradualPink);
    color: var(--white);
}

.bg-gradual-blue {
    background-image: var(--gradualBlue);
    color: var(--white);
}

.shadow[class*="-red"] {
    box-shadow: var(--ShadowSize) var(--redShadow);
}

.shadow[class*="-orange"] {
    box-shadow: var(--ShadowSize) var(--orangeShadow);
}

.shadow[class*="-yellow"] {
    box-shadow: var(--ShadowSize) var(--yellowShadow);
}

.shadow[class*="-olive"] {
    box-shadow: var(--ShadowSize) var(--oliveShadow);
}

.shadow[class*="-green"] {
    box-shadow: var(--ShadowSize) var(--greenShadow);
}

.shadow[class*="-cyan"] {
    box-shadow: var(--ShadowSize) var(--cyanShadow);
}

.shadow[class*="-blue"] {
    box-shadow: var(--ShadowSize) var(--blueShadow);
}

.shadow[class*="-purple"] {
    box-shadow: var(--ShadowSize) var(--purpleShadow);
}

.shadow[class*="-mauve"] {
    box-shadow: var(--ShadowSize) var(--mauveShadow);
}

.shadow[class*="-pink"] {
    box-shadow: var(--ShadowSize) var(--pinkShadow);
}

.shadow[class*="-brown"] {
    box-shadow: var(--ShadowSize) var(--brownShadow);
}

.shadow[class*="-grey"] {
    box-shadow: var(--ShadowSize) var(--greyShadow);
}

.shadow[class*="-gray"] {
    box-shadow: var(--ShadowSize) var(--grayShadow);
}

.shadow[class*="-black"] {
    box-shadow: var(--ShadowSize) var(--blackShadow);
}

.shadow[class*="-white"] {
    box-shadow: var(--ShadowSize) var(--blackShadow);
}

.text-shadow[class*="-red"] {
    text-shadow: var(--ShadowSize) var(--redShadow);
}

.text-shadow[class*="-orange"] {
    text-shadow: var(--ShadowSize) var(--orangeShadow);
}

.text-shadow[class*="-yellow"] {
    text-shadow: var(--ShadowSize) var(--yellowShadow);
}

.text-shadow[class*="-olive"] {
    text-shadow: var(--ShadowSize) var(--oliveShadow);
}

.text-shadow[class*="-green"] {
    text-shadow: var(--ShadowSize) var(--greenShadow);
}

.text-shadow[class*="-cyan"] {
    text-shadow: var(--ShadowSize) var(--cyanShadow);
}

.text-shadow[class*="-blue"] {
    text-shadow: var(--ShadowSize) var(--blueShadow);
}

.text-shadow[class*="-purple"] {
    text-shadow: var(--ShadowSize) var(--purpleShadow);
}

.text-shadow[class*="-mauve"] {
    text-shadow: var(--ShadowSize) var(--mauveShadow);
}

.text-shadow[class*="-pink"] {
    text-shadow: var(--ShadowSize) var(--pinkShadow);
}

.text-shadow[class*="-brown"] {
    text-shadow: var(--ShadowSize) var(--brownShadow);
}

.text-shadow[class*="-grey"] {
    text-shadow: var(--ShadowSize) var(--greyShadow);
}

.text-shadow[class*="-gray"] {
    text-shadow: var(--ShadowSize) var(--grayShadow);
}

.text-shadow[class*="-black"] {
    text-shadow: var(--ShadowSize) var(--blackShadow);
}

.bg-img {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.bg-mask {
    background-color: var(--black);
    position: relative;
}

    .bg-mask::after {
        content: "";
        border-radius: inherit;
        width: 100%;
        height: 100%;
        display: block;
        background-color: rgba(0, 0, 0, 0.4);
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
    }

    .bg-mask view,
    .bg-mask cover-view {
        z-index: 5;
        position: relative;
    }

.bg-video {
    position: relative;
}

    .bg-video video {
        display: block;
        height: 100%;
        width: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        position: absolute;
        top: 0;
        z-index: 0;
        pointer-events: none;
    }

/* ==================
          文本
 ==================== */

.text-xs {
    font-size: 0.15rem;
}

.text-sm {
    font-size: 0.2rem;
}

.text-df {
    font-size: 0.25rem;
}

.text-lg {
    font-size: 0.35rem;
}

.text-xl {
    font-size: 0.45rem;
}

.text-xxl {
    font-size: 0.55rem;
}

.text-sl {
    font-size: 0.75rem;
}

.text-xsl {
    font-size: 10.15rem;
}

.text-Abc {
    text-transform: Capitalize;
}

.text-ABC {
    text-transform: Uppercase;
}

.text-abc {
    text-transform: Lowercase;
}

.text-price::before {
    content: "¥";
    font-size: 80%;
    margin-right: 0.03rem;
}

.text-cut {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.text-bold {
    font-weight: bold;
}

.text-center {
    text-align: center;
}

.text-content {
    line-height: 1.6;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.text-red,
.line-red,
.lines-red {
    color: var(--red);
}

.text-orange,
.line-orange,
.lines-orange {
    color: var(--orange);
}

.text-yellow,
.line-yellow,
.lines-yellow {
    color: var(--yellow);
}

.text-olive,
.line-olive,
.lines-olive {
    color: var(--olive);
}

.text-green,
.line-green,
.lines-green {
    color: var(--green);
}

.text-cyan,
.line-cyan,
.lines-cyan {
    color: var(--cyan);
}

.text-blue,
.line-blue,
.lines-blue {
    color: var(--blue);
}

.text-purple,
.line-purple,
.lines-purple {
    color: var(--purple);
}

.text-mauve,
.line-mauve,
.lines-mauve {
    color: var(--mauve);
}

.text-pink,
.line-pink,
.lines-pink {
    color: var(--pink);
}

.text-brown,
.line-brown,
.lines-brown {
    color: var(--brown);
}

.text-grey,
.line-grey,
.lines-grey {
    color: var(--grey);
}

.text-gray,
.line-gray,
.lines-gray {
    color: var(--gray);
}

.text-black,
.line-black,
.lines-black {
    color: var(--black);
}

.text-white,
.line-white,
.lines-white {
    color: var(--white);
}
